#ifndef _MODEL_BLAZEPOSE_BLAZEPOSEPOSTPROCESS_
#define _MODEL_BLAZEPOSE_BLAZEPOSEPOSTPROCESS_

#include "../../../function.h"

namespace sp::Model::BlazePose{

void registe_blazepose_postprocess();

class blazepose_postprocess: public PythonFunction{
private:
    int width;
    int height;
public:
    blazepose_postprocess(std::vector<std::string> v);
    blazepose_postprocess();
    blazepose_postprocess(int width, int height);
    virtual ~blazepose_postprocess();
    static void registe();
    static Function* createObject(std::vector<std::string> params);
    static Function* createObject2();
    virtual void start();
    virtual bool waitForResource();
    virtual void process(std::vector<std::vector<Data*>>& data_input, std::vector<Data*>& data_output);
    virtual bool releaseResource();
    virtual void finish();
    virtual void copy(Function* other);
};

}

#endif